﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000195 RID: 405
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class CellFinalMonsterInfo : IMessage<CellFinalMonsterInfo>, IMessage, IEquatable<CellFinalMonsterInfo>, IDeepCloneable<CellFinalMonsterInfo>, IBufferMessage
	{
		// Token: 0x17000550 RID: 1360
		// (get) Token: 0x06001232 RID: 4658 RVA: 0x00034427 File Offset: 0x00032627
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<CellFinalMonsterInfo> Parser
		{
			get
			{
				return CellFinalMonsterInfo._parser;
			}
		}

		// Token: 0x17000551 RID: 1361
		// (get) Token: 0x06001233 RID: 4659 RVA: 0x0003442E File Offset: 0x0003262E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return CellFinalMonsterInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000552 RID: 1362
		// (get) Token: 0x06001234 RID: 4660 RVA: 0x00034440 File Offset: 0x00032640
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return CellFinalMonsterInfo.Descriptor;
			}
		}

		// Token: 0x06001235 RID: 4661 RVA: 0x00034447 File Offset: 0x00032647
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellFinalMonsterInfo()
		{
		}

		// Token: 0x06001236 RID: 4662 RVA: 0x00034450 File Offset: 0x00032650
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellFinalMonsterInfo(CellFinalMonsterInfo other) : this()
		{
			this.cellBossInfo_ = ((other.cellBossInfo_ != null) ? other.cellBossInfo_.Clone() : null);
			this.selectBossInfo_ = ((other.selectBossInfo_ != null) ? other.selectBossInfo_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06001237 RID: 4663 RVA: 0x000344AC File Offset: 0x000326AC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellFinalMonsterInfo Clone()
		{
			return new CellFinalMonsterInfo(this);
		}

		// Token: 0x17000553 RID: 1363
		// (get) Token: 0x06001238 RID: 4664 RVA: 0x000344B4 File Offset: 0x000326B4
		// (set) Token: 0x06001239 RID: 4665 RVA: 0x000344BC File Offset: 0x000326BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellMonsterInfo CellBossInfo
		{
			get
			{
				return this.cellBossInfo_;
			}
			set
			{
				this.cellBossInfo_ = value;
			}
		}

		// Token: 0x17000554 RID: 1364
		// (get) Token: 0x0600123A RID: 4666 RVA: 0x000344C5 File Offset: 0x000326C5
		// (set) Token: 0x0600123B RID: 4667 RVA: 0x000344CD File Offset: 0x000326CD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public CellMonsterSelectInfo SelectBossInfo
		{
			get
			{
				return this.selectBossInfo_;
			}
			set
			{
				this.selectBossInfo_ = value;
			}
		}

		// Token: 0x0600123C RID: 4668 RVA: 0x000344D6 File Offset: 0x000326D6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as CellFinalMonsterInfo);
		}

		// Token: 0x0600123D RID: 4669 RVA: 0x000344E4 File Offset: 0x000326E4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(CellFinalMonsterInfo other)
		{
			return other != null && (other == this || (object.Equals(this.CellBossInfo, other.CellBossInfo) && object.Equals(this.SelectBossInfo, other.SelectBossInfo) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600123E RID: 4670 RVA: 0x00034538 File Offset: 0x00032738
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.cellBossInfo_ != null)
			{
				num ^= this.CellBossInfo.GetHashCode();
			}
			if (this.selectBossInfo_ != null)
			{
				num ^= this.SelectBossInfo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600123F RID: 4671 RVA: 0x0003458A File Offset: 0x0003278A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06001240 RID: 4672 RVA: 0x00034592 File Offset: 0x00032792
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06001241 RID: 4673 RVA: 0x0003459C File Offset: 0x0003279C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.cellBossInfo_ != null)
			{
				output.WriteRawTag(26);
				output.WriteMessage(this.CellBossInfo);
			}
			if (this.selectBossInfo_ != null)
			{
				output.WriteRawTag(42);
				output.WriteMessage(this.SelectBossInfo);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06001242 RID: 4674 RVA: 0x000345F8 File Offset: 0x000327F8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.cellBossInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.CellBossInfo);
			}
			if (this.selectBossInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.SelectBossInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06001243 RID: 4675 RVA: 0x00034650 File Offset: 0x00032850
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CellFinalMonsterInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.cellBossInfo_ != null)
			{
				if (this.cellBossInfo_ == null)
				{
					this.CellBossInfo = new CellMonsterInfo();
				}
				this.CellBossInfo.MergeFrom(other.CellBossInfo);
			}
			if (other.selectBossInfo_ != null)
			{
				if (this.selectBossInfo_ == null)
				{
					this.SelectBossInfo = new CellMonsterSelectInfo();
				}
				this.SelectBossInfo.MergeFrom(other.SelectBossInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06001244 RID: 4676 RVA: 0x000346D0 File Offset: 0x000328D0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06001245 RID: 4677 RVA: 0x000346DC File Offset: 0x000328DC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 26U)
				{
					if (num != 42U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						if (this.selectBossInfo_ == null)
						{
							this.SelectBossInfo = new CellMonsterSelectInfo();
						}
						input.ReadMessage(this.SelectBossInfo);
					}
				}
				else
				{
					if (this.cellBossInfo_ == null)
					{
						this.CellBossInfo = new CellMonsterInfo();
					}
					input.ReadMessage(this.CellBossInfo);
				}
			}
		}

		// Token: 0x04000789 RID: 1929
		private static readonly MessageParser<CellFinalMonsterInfo> _parser = new MessageParser<CellFinalMonsterInfo>(() => new CellFinalMonsterInfo());

		// Token: 0x0400078A RID: 1930
		private UnknownFieldSet _unknownFields;

		// Token: 0x0400078B RID: 1931
		public const int CellBossInfoFieldNumber = 3;

		// Token: 0x0400078C RID: 1932
		private CellMonsterInfo cellBossInfo_;

		// Token: 0x0400078D RID: 1933
		public const int SelectBossInfoFieldNumber = 5;

		// Token: 0x0400078E RID: 1934
		private CellMonsterSelectInfo selectBossInfo_;
	}
}
